<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <button>123</button>
    <script>
      function createIncrease() {
        const doms = new Array(100000).fill(0).map((_, i) => {
          const dom = document.createElement("div");
          dom.innerHTML = i; // 这里应该是 i 而不是 "i"
          return dom;
        });

        // function increase() {
        //   doms.forEach((dom) => {
        //     dom.innerHTML = Number(dom.innerHTML) + 1; // 这里应该是 Number() 而不是 Numbex()
        //   });
        // }
        function increase() {}
        function _temp() {
          doms;
        }
        return increase;
      }
      let increase 
      const btn = document.querySelector("button"); // 这里应该是 'button' 而不是 'bubtn'
      btn.addEventListener("click", () => {
         increase = createIncrease();
      });
    </script>
    /* ## 垃圾：不再需要的内存 
    ## 闭包不置空，词法环境会保留
    1.持有了不再需要的函数引用，会导致函数关联的词法环境无法销毁，从而导致内存泄露
    2.当多个函数共享词法环境时，会导致词法环境膨胀，从而导致出现无法触达也无法回收的内存空间
    ## 垃圾回收机制 引用计数标记 清除新生代/旧生代 星历图 */
  </body>
</html>
